package fmod;

import fmod.fmod.FMOD_STUDIO_EVENT_CALLBACK;
import java.io.File;
import java.io.PrintStream;
import java.math.BigInteger;
import zombie.debug.DebugLog;

/* loaded from: javafmodJNI.class */
public class javafmodJNI {
    public static final native long FMOD_Studio_Create();

    public static final native long FMOD_Studio_GetEvent(String str);

    public static final native long FMOD_Studio_CreateEventInstance(long j);

    public static final native long FMOD_Studio_LoadBankFile(String str);

    public static final native void FMOD_Studio_StartEvent(long j);

    public static final native long FMOD_Studio_GetTimelinePosition(long j);

    public static final native int FMOD_Studio_LoadSampleData(long j);

    public static final native int FMOD_Studio_LoadEventSampleData(long j);

    public static final native int FMOD_Memory_Initialize(long j, int i, long j2, long j3, long j4, long j5);

    public static final native int FMOD_Memory_GetStats(long j, long j2, long j3);

    public static final native int FMOD_Debug_Initialize(long j, long j2, long j3, String str);

    public static final native int FMOD_File_SetDiskBusy(int i);

    public static final native int FMOD_File_GetDiskBusy(long j);

    public static final native int FMOD_System_Create();

    public static final native int FMOD_System_Release(long j);

    public static final native int FMOD_System_SetOutput(long j, long j2);

    public static final native int FMOD_System_GetOutput(long j, long j2);

    public static final native int FMOD_System_GetNumDrivers(long j, long j2);

    public static final native int FMOD_System_GetDriverInfo(long j, int i, String str, int i2, long j2, long j3, long j4, long j5);

    public static final native int FMOD_System_SetDriver(long j, int i);

    public static final native int FMOD_System_GetDriver(long j, long j2);

    public static final native int FMOD_System_SetSoftwareChannels(long j, int i);

    public static final native int FMOD_System_GetSoftwareChannels(long j, long j2);

    public static final native int FMOD_System_SetSoftwareFormat(long j, int i, long j2, int i2);

    public static final native int FMOD_System_GetSoftwareFormat(long j, long j2, long j3, long j4);

    public static final native int FMOD_System_SetDSPBufferSize(long j, long j2, int i);

    public static final native int FMOD_System_GetDSPBufferSize(long j, long j2, long j3);

    public static final native int FMOD_System_SetFileSystem(long j, long j2, long j3, long j4, long j5, long j6, long j7, int i);

    public static final native int FMOD_System_AttachFileSystem(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_System_SetAdvancedSettings(long j, long j2);

    public static final native int FMOD_System_GetAdvancedSettings(long j, long j2);

    public static final native int FMOD_System_SetCallback(long j, long j2, long j3);

    public static final native int FMOD_System_SetPluginPath(long j, String str);

    public static final native int FMOD_System_LoadPlugin(long j, String str, long j2, long j3);

    public static final native int FMOD_System_UnloadPlugin(long j, long j2);

    public static final native int FMOD_System_GetNumPlugins(long j, long j2, long j3);

    public static final native int FMOD_System_GetPluginHandle(long j, long j2, int i, long j3);

    public static final native int FMOD_System_GetPluginInfo(long j, long j2, long j3, String str, int i, long j4);

    public static final native int FMOD_System_SetOutputByPlugin(long j, long j2);

    public static final native int FMOD_System_GetOutputByPlugin(long j, long j2);

    public static final native int FMOD_System_CreateDSPByPlugin(long j, long j2, long j3);

    public static final native int FMOD_System_GetDSPInfoByPlugin(long j, long j2, long j3);

    public static final native int FMOD_System_RegisterCodec(long j, long j2, long j3, long j4);

    public static final native int FMOD_System_RegisterDSP(long j, long j2, long j3);

    public static final native int FMOD_System_Init(int i, long j, long j2);

    public static final native int FMOD_System_Close(long j);

    public static final native int FMOD_System_Update();

    public static final native int FMOD_System_SetSpeakerPosition(long j, long j2, float f, float f2, long j3);

    public static final native int FMOD_System_GetSpeakerPosition(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_System_SetStreamBufferSize(long j, long j2, long j3);

    public static final native int FMOD_System_GetStreamBufferSize(long j, long j2, long j3);

    public static final native int FMOD_System_Set3DSettings(float f, float f2, float f3);

    public static final native int FMOD_System_Get3DSettings(long j, long j2, long j3);

    public static final native int FMOD_System_Set3DNumListeners(int i);

    public static final native int FMOD_System_Get3DNumListeners(long j, long j2);

    public static final native int FMOD_System_Set3DListenerAttributes(int i, float f, float f2, float f3, float f4, float f5, float f6, float f7, float f8, float f9, float f10, float f11, float f12);

    public static final native int FMOD_System_Get3DListenerAttributes(long j, int i, long j2, long j3, long j4, long j5);

    public static final native int FMOD_System_Set3DRolloffCallback(long j, long j2);

    public static final native int FMOD_System_MixerSuspend(long j);

    public static final native int FMOD_System_MixerResume(long j);

    public static final native int FMOD_System_GetVersion(long j, long j2);

    public static final native int FMOD_System_GetOutputHandle(long j, long j2);

    public static final native int FMOD_System_GetChannelsPlaying(long j, long j2);

    public static final native int FMOD_System_GetCPUUsage(long j, long j2, long j3, long j4, long j5, long j6);

    public static final native long FMOD_System_CreateSound(String str, long j);

    public static final native long FMOD_System_CreateRecordSound(long j, long j2, long j3, long j4, int i);

    public static final native long FMOD_System_SetVADMode(int i);

    public static final native int FMOD_System_SetRecordVolume(int i);

    public static final native long FMOD_System_CreateRAWPlaySound(long j, long j2, long j3);

    public static final native long FMOD_System_SetRawPlayBufferingPeriod(long j);

    public static final native int FMOD_System_RAWPlayData(long j, short[] sArr, long j2);

    public static final native int FMOD_System_CreateStream(long j, String str, long j2, long j3, long j4);

    public static final native int FMOD_System_CreateDSP(long j, long j2, long j3);

    public static final native long FMOD_System_CreateDSPByType(long j);

    public static final native long FMOD_System_CreateChannelGroup(String str);

    public static final native int FMOD_System_CreateSoundGroup(long j, String str, long j2);

    public static final native int FMOD_System_CreateReverb3D(long j, long j2);

    public static final native long FMOD_System_PlaySound(long j, long j2);

    public static final native int FMOD_System_PlayDSP();

    public static final native int FMOD_System_GetChannel(long j, int i, long j2);

    public static final native long FMOD_System_GetMasterChannelGroup();

    public static final native int FMOD_System_GetMasterSoundGroup(long j, long j2);

    public static final native int FMOD_System_AttachChannelGroupToPort(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_System_DetachChannelGroupFromPort(long j, long j2);

    public static final native int FMOD_System_SetReverbProperties(long j, int i, long j2);

    public static final native int FMOD_System_GetReverbProperties(long j, int i, long j2);

    public static final native int FMOD_System_LockDSP(long j);

    public static final native int FMOD_System_UnlockDSP(long j);

    public static final native int FMOD_System_GetRecordNumDrivers();

    public static final native int FMOD_System_GetRecordDriverInfo(int i, FMOD_DriverInfo fMOD_DriverInfo);

    public static final native int FMOD_System_GetRecordPosition(int i, Long l);

    public static final native int FMOD_System_RecordStart(int i, long j, boolean z);

    public static final native int FMOD_System_RecordStop(int i);

    public static final native int FMOD_System_IsRecording(long j, int i, long j2);

    public static final native int FMOD_System_CreateGeometry(long j, int i, int i2, long j2);

    public static final native int FMOD_System_SetGeometrySettings(long j, float f);

    public static final native int FMOD_System_GetGeometrySettings(long j, long j2);

    public static final native int FMOD_System_LoadGeometry(long j, long j2, int i, long j3);

    public static final native int FMOD_System_GetGeometryOcclusion(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_System_SetNetworkProxy(long j, String str);

    public static final native int FMOD_System_GetNetworkProxy(long j, String str, int i);

    public static final native int FMOD_System_SetNetworkTimeout(long j, int i);

    public static final native int FMOD_System_GetNetworkTimeout(long j, long j2);

    public static final native int FMOD_System_SetUserData(long j, long j2);

    public static final native int FMOD_System_GetUserData(long j, long j2);

    public static final native int FMOD_Sound_Release(long j);

    public static final native int FMOD_RAWPlaySound_Release(long j);

    public static final native int FMOD_RecordSound_Release(long j);

    public static final native int FMOD_Sound_GetSystemObject(long j, long j2);

    public static final native int FMOD_Sound_Lock(long j, long j2, long j3, byte[] bArr, byte[] bArr2, Long l, Long l2, long[] jArr);

    public static final native int FMOD_Sound_GetData(long j, byte[] bArr, Long l, Long l2, Long l3);

    public static final native int FMOD_Sound_Unlock(long j, long[] jArr);

    public static final native int FMOD_Sound_SetDefaults(long j, float f, int i);

    public static final native int FMOD_Sound_GetDefaults(long j, long j2, long j3);

    public static final native int FMOD_Sound_Set3DMinMaxDistance(long j, float f, float f2);

    public static final native int FMOD_Sound_Get3DMinMaxDistance(long j, long j2, long j3);

    public static final native int FMOD_Sound_Set3DConeSettings(long j, float f, float f2, float f3);

    public static final native int FMOD_Sound_Get3DConeSettings(long j, long j2, long j3, long j4);

    public static final native int FMOD_Sound_Set3DCustomRolloff(long j, long j2, int i);

    public static final native int FMOD_Sound_Get3DCustomRolloff(long j, long j2, long j3);

    public static final native int FMOD_Sound_SetSubSound(long j, int i, long j2);

    public static final native int FMOD_Sound_GetSubSound(long j, int i, long j2);

    public static final native int FMOD_Sound_GetSubSoundParent(long j, long j2);

    public static final native int FMOD_Sound_GetName(long j, String str, int i);

    public static final native int FMOD_Sound_GetLength(long j, long j2);

    public static final native int FMOD_Sound_GetFormat(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_Sound_GetNumSubSounds(long j, long j2);

    public static final native int FMOD_Sound_GetNumTags(long j, long j2, long j3);

    public static final native int FMOD_Sound_GetTag(long j, String str, int i, long j2);

    public static final native int FMOD_Sound_GetOpenState(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_Sound_ReadData(long j, long j2, long j3, long j4);

    public static final native int FMOD_Sound_SeekData(long j, long j2);

    public static final native int FMOD_Sound_SetSoundGroup(long j, long j2);

    public static final native int FMOD_Sound_GetSoundGroup(long j, long j2);

    public static final native int FMOD_Sound_GetNumSyncPoints(long j, long j2);

    public static final native int FMOD_Sound_GetSyncPoint(long j, int i, long j2);

    public static final native int FMOD_Sound_GetSyncPointInfo(long j, long j2, String str, int i, long j3, long j4);

    public static final native int FMOD_Sound_AddSyncPoint(long j, long j2, long j3, String str, long j4);

    public static final native int FMOD_Sound_DeleteSyncPoint(long j, long j2);

    public static final native int FMOD_Sound_SetMode(long j, long j2);

    public static final native int FMOD_Sound_GetMode(long j, long j2);

    public static final native int FMOD_Sound_SetLoopCount(long j, int i);

    public static final native int FMOD_Sound_GetLoopCount(long j, long j2);

    public static final native int FMOD_Sound_SetLoopPoints(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_Sound_GetLoopPoints(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_Sound_GetMusicNumChannels(long j, long j2);

    public static final native int FMOD_Sound_SetMusicChannelVolume(long j, int i, float f);

    public static final native int FMOD_Sound_GetMusicChannelVolume(long j, int i, long j2);

    public static final native int FMOD_Sound_SetMusicSpeed(long j, float f);

    public static final native int FMOD_Sound_GetMusicSpeed(long j, long j2);

    public static final native int FMOD_Sound_SetUserData(long j, long j2);

    public static final native int FMOD_Sound_GetUserData(long j, long j2);

    public static final native int FMOD_Channel_GetSystemObject(long j, long j2);

    public static final native int FMOD_Channel_Stop(long j);

    public static final native int FMOD_Channel_SetPaused(long j, long j2);

    public static final native int FMOD_Channel_GetPaused(long j, long j2);

    public static final native int FMOD_Channel_SetVolume(long j, float f);

    public static final native int FMOD_Channel_GetVolume(long j, long j2);

    public static final native int FMOD_Channel_SetVolumeRamp(long j, long j2);

    public static final native int FMOD_Channel_GetVolumeRamp(long j, long j2);

    public static final native float FMOD_Channel_GetAudibility(long j);

    public static final native int FMOD_Channel_SetPitch(long j, float f);

    public static final native int FMOD_Channel_GetPitch(long j, long j2);

    public static final native int FMOD_Channel_SetMute(long j, long j2);

    public static final native int FMOD_Channel_GetMute(long j, long j2);

    public static final native int FMOD_Channel_SetReverbProperties(long j, int i, float f);

    public static final native int FMOD_Channel_GetReverbProperties(long j, int i, long j2);

    public static final native int FMOD_Channel_SetLowPassGain(long j, float f);

    public static final native int FMOD_Channel_GetLowPassGain(long j, long j2);

    public static final native int FMOD_Channel_SetMode(long j, long j2);

    public static final native int FMOD_Channel_GetMode(long j, long j2);

    public static final native int FMOD_Channel_SetCallback(long j, long j2);

    public static final native boolean FMOD_Channel_IsPlaying(long j);

    public static final native int FMOD_Channel_SetPan(long j, float f);

    public static final native int FMOD_Channel_SetMixLevelsOutput(long j, float f, float f2, float f3, float f4, float f5, float f6, float f7, float f8);

    public static final native int FMOD_Channel_SetMixLevelsInput(long j, long j2, int i);

    public static final native int FMOD_Channel_SetMixMatrix(long j, long j2, int i, int i2, int i3);

    public static final native int FMOD_Channel_GetMixMatrix(long j, long j2, long j3, long j4, int i);

    public static final native int FMOD_Channel_GetDSPClock(long j, long j2, long j3);

    public static final native int FMOD_Channel_SetDelay(long j, BigInteger bigInteger, BigInteger bigInteger2, long j2);

    public static final native int FMOD_Channel_GetDelay(long j, long j2, long j3, long j4);

    public static final native int FMOD_Channel_AddFadePoint(long j, BigInteger bigInteger, float f);

    public static final native int FMOD_Channel_RemoveFadePoints(long j, BigInteger bigInteger, BigInteger bigInteger2);

    public static final native int FMOD_Channel_GetFadePoints(long j, long j2, long j3, long j4);

    public static final native int FMOD_Channel_GetDSP(long j, int i, long j2);

    public static final native int FMOD_Channel_AddDSP(long j, int i, long j2);

    public static final native int FMOD_Channel_RemoveDSP(long j, long j2);

    public static final native int FMOD_Channel_GetNumDSPs(long j);

    public static final native int FMOD_Channel_SetDSPIndex(long j, long j2, int i);

    public static final native int FMOD_Channel_GetDSPIndex(long j, long j2, long j3);

    public static final native int FMOD_Channel_OverridePanDSP(long j, long j2);

    public static final native int FMOD_Channel_Set3DAttributes(long j, float f, float f2, float f3, float f4, float f5, float f6);

    public static final native int FMOD_Channel_Get3DAttributes(long j, long j2, long j3);

    public static final native int FMOD_Channel_Set3DMinMaxDistance(long j, float f, float f2);

    public static final native int FMOD_Channel_Get3DMinMaxDistance(long j, long j2, long j3);

    public static final native int FMOD_Channel_Set3DConeSettings(long j, float f, float f2, float f3);

    public static final native int FMOD_Channel_Get3DConeSettings(long j, long j2, long j3, long j4);

    public static final native int FMOD_Channel_Set3DConeOrientation(long j, long j2);

    public static final native int FMOD_Channel_Get3DConeOrientation(long j, long j2);

    public static final native int FMOD_Channel_Set3DCustomRolloff(long j, long j2, int i);

    public static final native int FMOD_Channel_Get3DCustomRolloff(long j, long j2, long j3);

    public static final native int FMOD_Channel_Set3DOcclusion(long j, float f, float f2);

    public static final native int FMOD_Channel_Get3DOcclusion(long j, long j2, long j3);

    public static final native int FMOD_Channel_Set3DSpread(long j, float f);

    public static final native int FMOD_Channel_Get3DSpread(long j, long j2);

    public static final native int FMOD_Channel_Set3DLevel(long j, float f);

    public static final native int FMOD_Channel_Get3DLevel(long j, long j2);

    public static final native int FMOD_Channel_Set3DDopplerLevel(long j, float f);

    public static final native int FMOD_Channel_Get3DDopplerLevel(long j, long j2);

    public static final native int FMOD_Channel_Set3DDistanceFilter(long j, long j2, float f, float f2);

    public static final native int FMOD_Channel_Get3DDistanceFilter(long j, long j2, long j3, long j4);

    public static final native int FMOD_Channel_SetUserData(long j, long j2);

    public static final native int FMOD_Channel_GetUserData(long j, long j2);

    public static final native int FMOD_Channel_SetFrequency(long j, float f);

    public static final native int FMOD_Channel_GetFrequency(long j, long j2);

    public static final native int FMOD_Channel_SetPriority(long j, int i);

    public static final native int FMOD_Channel_GetPriority(long j, long j2);

    public static final native int FMOD_Channel_SetPosition(long j, long j2);

    public static final native long FMOD_Channel_GetPosition(long j, long j2);

    public static final native int FMOD_Channel_SetChannelGroup(long j, long j2);

    public static final native int FMOD_Channel_GetChannelGroup(long j, long j2);

    public static final native int FMOD_Channel_SetLoopCount(long j, int i);

    public static final native int FMOD_Channel_GetLoopCount(long j, long j2);

    public static final native int FMOD_Channel_SetLoopPoints(long j, long j2, long j3, long j4, long j5);

    public static final native int FMOD_Channel_GetLoopPoints(long j, long j2, long j3, long j4, long j5);

    public static final native boolean FMOD_Channel_IsVirtual(long j);

    public static final native int FMOD_Channel_GetCurrentSound(long j, long j2);

    public static final native int FMOD_Channel_GetIndex(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetSystemObject(long j, long j2);

    public static final native int FMOD_ChannelGroup_Stop(long j);

    public static final native int FMOD_ChannelGroup_SetPaused(long j, boolean z);

    public static final native int FMOD_ChannelGroup_GetPaused(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetVolume(long j, float f);

    public static final native int FMOD_ChannelGroup_GetVolume(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetVolumeRamp(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetVolumeRamp(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetAudibility(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetPitch(long j, float f);

    public static final native int FMOD_ChannelGroup_GetPitch(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetMute(long j, boolean z);

    public static final native int FMOD_ChannelGroup_GetMute(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetReverbProperties(long j, int i, float f);

    public static final native int FMOD_ChannelGroup_GetReverbProperties(long j, int i, long j2);

    public static final native int FMOD_ChannelGroup_SetLowPassGain(long j, float f);

    public static final native int FMOD_ChannelGroup_GetLowPassGain(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetMode(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetMode(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetCallback(long j, long j2);

    public static final native int FMOD_ChannelGroup_IsPlaying(long j, long j2);

    public static final native int FMOD_ChannelGroup_SetPan(long j, float f);

    public static final native int FMOD_ChannelGroup_SetMixLevelsOutput(long j, float f, float f2, float f3, float f4, float f5, float f6, float f7, float f8);

    public static final native int FMOD_ChannelGroup_SetMixLevelsInput(long j, long j2, int i);

    public static final native int FMOD_ChannelGroup_SetMixMatrix(long j, long j2, int i, int i2, int i3);

    public static final native int FMOD_ChannelGroup_GetMixMatrix(long j, long j2, long j3, long j4, int i);

    public static final native int FMOD_ChannelGroup_GetDSPClock(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_SetDelay(long j, BigInteger bigInteger, BigInteger bigInteger2, long j2);

    public static final native int FMOD_ChannelGroup_GetDelay(long j, long j2, long j3, long j4);

    public static final native int FMOD_ChannelGroup_AddFadePoint(long j, BigInteger bigInteger, float f);

    public static final native int FMOD_ChannelGroup_RemoveFadePoints(long j, BigInteger bigInteger, BigInteger bigInteger2);

    public static final native int FMOD_ChannelGroup_GetFadePoints(long j, long j2, long j3, long j4);

    public static final native int FMOD_ChannelGroup_GetDSP(long j, int i, long j2);

    public static final native int FMOD_ChannelGroup_AddDSP(long j, int i, long j2);

    public static final native int FMOD_ChannelGroup_RemoveDSP(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetNumDSPs(long j);

    public static final native int FMOD_ChannelGroup_SetDSPIndex(long j, long j2, int i);

    public static final native int FMOD_ChannelGroup_GetDSPIndex(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_OverridePanDSP(long j, long j2);

    public static final native int FMOD_ChannelGroup_Set3DAttributes(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_Get3DAttributes(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_Set3DMinMaxDistance(long j, float f, float f2);

    public static final native int FMOD_ChannelGroup_Get3DMinMaxDistance(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_Set3DConeSettings(long j, float f, float f2, float f3);

    public static final native int FMOD_ChannelGroup_Get3DConeSettings(long j, long j2, long j3, long j4);

    public static final native int FMOD_ChannelGroup_Set3DConeOrientation(long j, long j2);

    public static final native int FMOD_ChannelGroup_Get3DConeOrientation(long j, long j2);

    public static final native int FMOD_ChannelGroup_Set3DCustomRolloff(long j, long j2, int i);

    public static final native int FMOD_ChannelGroup_Get3DCustomRolloff(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_Set3DOcclusion(long j, float f, float f2);

    public static final native int FMOD_ChannelGroup_Get3DOcclusion(long j, long j2, long j3);

    public static final native int FMOD_ChannelGroup_Set3DSpread(long j, float f);

    public static final native int FMOD_ChannelGroup_Get3DSpread(long j, long j2);

    public static final native int FMOD_ChannelGroup_Set3DLevel(long j, float f);

    public static final native int FMOD_ChannelGroup_Get3DLevel(long j, long j2);

    public static final native int FMOD_ChannelGroup_Set3DDopplerLevel(long j, float f);

    public static final native int FMOD_ChannelGroup_Get3DDopplerLevel(long j, long j2);

    public static final native int FMOD_ChannelGroup_Set3DDistanceFilter(long j, long j2, float f, float f2);

    public static final native int FMOD_ChannelGroup_Get3DDistanceFilter(long j, long j2, long j3, long j4);

    public static final native int FMOD_ChannelGroup_SetUserData(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetUserData(long j, long j2);

    public static final native int FMOD_ChannelGroup_Release(long j);

    public static final native int FMOD_ChannelGroup_AddGroup(long j, long j2, long j3, long j4);

    public static final native int FMOD_ChannelGroup_GetNumGroups(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetGroup(long j, int i, long j2);

    public static final native int FMOD_ChannelGroup_GetParentGroup(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetName(long j, String str, int i);

    public static final native int FMOD_ChannelGroup_GetNumChannels(long j, long j2);

    public static final native int FMOD_ChannelGroup_GetChannel(long j, int i, long j2);

    public static final native int FMOD_SoundGroup_Release(long j);

    public static final native int FMOD_SoundGroup_GetSystemObject(long j, long j2);

    public static final native int FMOD_SoundGroup_SetMaxAudible(long j, int i);

    public static final native int FMOD_SoundGroup_GetMaxAudible(long j, long j2);

    public static final native int FMOD_SoundGroup_SetMaxAudibleBehavior(long j, long j2);

    public static final native int FMOD_SoundGroup_GetMaxAudibleBehavior(long j, long j2);

    public static final native int FMOD_SoundGroup_SetMuteFadeSpeed(long j, float f);

    public static final native int FMOD_SoundGroup_GetMuteFadeSpeed(long j, long j2);

    public static final native int FMOD_SoundGroup_SetVolume(long j, float f);

    public static final native int FMOD_SoundGroup_GetVolume(long j, long j2);

    public static final native int FMOD_SoundGroup_Stop(long j);

    public static final native int FMOD_SoundGroup_GetName(long j, String str, int i);

    public static final native int FMOD_SoundGroup_GetNumSounds(long j, long j2);

    public static final native int FMOD_SoundGroup_GetSound(long j, int i, long j2);

    public static final native int FMOD_SoundGroup_GetNumPlaying(long j, long j2);

    public static final native int FMOD_SoundGroup_SetUserData(long j, long j2);

    public static final native int FMOD_SoundGroup_GetUserData(long j, long j2);

    public static final native int FMOD_DSP_Release(long j);

    public static final native int FMOD_DSP_GetSystemObject(long j, long j2);

    public static final native int FMOD_DSP_AddInput(long j, long j2, long j3, long j4);

    public static final native int FMOD_DSP_DisconnectFrom(long j, long j2, long j3);

    public static final native int FMOD_DSP_DisconnectAll(long j, long j2, long j3);

    public static final native int FMOD_DSP_GetNumInputs(long j, long j2);

    public static final native int FMOD_DSP_GetNumOutputs(long j, long j2);

    public static final native int FMOD_DSP_GetInput(long j, int i, long j2, long j3);

    public static final native int FMOD_DSP_GetOutput(long j, int i, long j2, long j3);

    public static final native int FMOD_DSP_SetActive(long j, long j2);

    public static final native int FMOD_DSP_GetActive(long j, long j2);

    public static final native int FMOD_DSP_SetBypass(long j, long j2);

    public static final native int FMOD_DSP_GetBypass(long j, long j2);

    public static final native int FMOD_DSP_SetWetDryMix(long j, float f, float f2, float f3);

    public static final native int FMOD_DSP_GetWetDryMix(long j, long j2, long j3, long j4);

    public static final native int FMOD_DSP_SetChannelFormat(long j, long j2, int i, long j3);

    public static final native int FMOD_DSP_GetChannelFormat(long j, long j2, long j3, long j4);

    public static final native int FMOD_DSP_GetOutputChannelFormat(long j, long j2, int i, long j3, long j4, long j5, long j6);

    public static final native int FMOD_DSP_Reset(long j);

    public static final native int FMOD_DSP_SetParameterFloat(long j, int i, float f);

    public static final native int FMOD_DSP_SetParameterInt(long j, int i, int i2);

    public static final native int FMOD_DSP_SetParameterBool(long j, int i, long j2);

    public static final native int FMOD_DSP_SetParameterData(long j, int i, long j2, long j3);

    public static final native int FMOD_DSP_GetParameterFloat(long j, int i, long j2, String str, int i2);

    public static final native int FMOD_DSP_GetParameterInt(long j, int i, long j2, String str, int i2);

    public static final native int FMOD_DSP_GetParameterBool(long j, int i, long j2, String str, int i2);

    public static final native int FMOD_DSP_GetParameterData(long j, int i, long j2, long j3, String str, int i2);

    public static final native int FMOD_DSP_GetNumParameters(long j, long j2);

    public static final native int FMOD_DSP_GetParameterInfo(long j, int i, long j2);

    public static final native int FMOD_DSP_GetDataParameterIndex(long j, int i, long j2);

    public static final native int FMOD_DSP_ShowConfigDialog(long j, long j2, long j3);

    public static final native int FMOD_DSP_GetInfo(long j, String str, long j2, long j3, long j4, long j5);

    public static final native int FMOD_DSP_GetType(long j, long j2);

    public static final native int FMOD_DSP_GetIdle(long j, long j2);

    public static final native int FMOD_DSP_SetUserData(long j, long j2);

    public static final native int FMOD_DSP_GetUserData(long j, long j2);

    public static final native int FMOD_DSP_SetMeteringEnabled(long j, long j2, long j3);

    public static final native int FMOD_DSP_GetMeteringEnabled(long j, long j2, long j3);

    public static final native int FMOD_DSP_GetMeteringInfo(long j, long j2, long j3);

    public static final native int FMOD_DSPConnection_GetInput(long j, long j2);

    public static final native int FMOD_DSPConnection_GetOutput(long j, long j2);

    public static final native int FMOD_DSPConnection_SetMix(long j, float f);

    public static final native int FMOD_DSPConnection_GetMix(long j, long j2);

    public static final native int FMOD_DSPConnection_SetMixMatrix(long j, long j2, int i, int i2, int i3);

    public static final native int FMOD_DSPConnection_GetMixMatrix(long j, long j2, long j3, long j4, int i);

    public static final native int FMOD_DSPConnection_GetType(long j, long j2);

    public static final native int FMOD_DSPConnection_SetUserData(long j, long j2);

    public static final native int FMOD_DSPConnection_GetUserData(long j, long j2);

    public static final native int FMOD_Geometry_Release(long j);

    public static final native int FMOD_Geometry_AddPolygon(long j, float f, float f2, long j2, int i, long j3, long j4);

    public static final native int FMOD_Geometry_GetNumPolygons(long j, long j2);

    public static final native int FMOD_Geometry_GetMaxPolygons(long j, long j2, long j3);

    public static final native int FMOD_Geometry_GetPolygonNumVertices(long j, int i, long j2);

    public static final native int FMOD_Geometry_SetPolygonVertex(long j, int i, int i2, long j2);

    public static final native int FMOD_Geometry_GetPolygonVertex(long j, int i, int i2, long j2);

    public static final native int FMOD_Geometry_SetPolygonAttributes(long j, int i, float f, float f2, long j2);

    public static final native int FMOD_Geometry_GetPolygonAttributes(long j, int i, long j2, long j3, long j4);

    public static final native int FMOD_Geometry_SetActive(long j, long j2);

    public static final native int FMOD_Geometry_GetActive(long j, long j2);

    public static final native int FMOD_Geometry_SetRotation(long j, long j2, long j3);

    public static final native int FMOD_Geometry_GetRotation(long j, long j2, long j3);

    public static final native int FMOD_Geometry_SetPosition(long j, long j2);

    public static final native int FMOD_Geometry_GetPosition(long j, long j2);

    public static final native int FMOD_Geometry_SetScale(long j, long j2);

    public static final native int FMOD_Geometry_GetScale(long j, long j2);

    public static final native int FMOD_Geometry_Save(long j, long j2, long j3);

    public static final native int FMOD_Geometry_SetUserData(long j, long j2);

    public static final native int FMOD_Geometry_GetUserData(long j, long j2);

    public static final native int FMOD_Reverb3D_Release(long j);

    public static final native int FMOD_Reverb3D_Set3DAttributes(long j, long j2, float f, float f2);

    public static final native int FMOD_Reverb3D_Get3DAttributes(long j, long j2, long j3, long j4);

    public static final native int FMOD_Reverb3D_SetProperties(long j, long j2);

    public static final native int FMOD_Reverb3D_GetProperties(long j, long j2);

    public static final native int FMOD_Reverb3D_SetActive(long j, long j2);

    public static final native int FMOD_Reverb3D_GetActive(long j, long j2);

    public static final native int FMOD_Reverb3D_SetUserData(long j, long j2);

    public static final native int FMOD_Reverb3D_GetUserData(long j, long j2);

    public static final native void FMOD_System_SetReverbDefault(int i, int i2);

    public static final native int FMOD_Studio_EventInstance3D(long j, float f, float f2, float f3);

    public static final native int FMOD_Studio_SetNumListeners(int i);

    public static final native void FMOD_Studio_Listener3D(int i, float f, float f2, float f3, float f4, float f5, float f6, float f7, float f8, float f9, float f10, float f11, float f12);

    public static final native int FMOD_Studio_EventInstance_SetParameterByName(long j, String str, float f);

    public static final native float FMOD_Studio_GetParameter(long j, String str);

    public static final native int FMOD_Studio_GetPlaybackState(long j);

    public static final native int FMOD_Studio_EventInstance_SetVolume(long j, float f);

    public static final native float FMOD_Studio_EventInstance_GetVolume(long j);

    public static final native int FMOD_Studio_ReleaseEventInstance(long j);

    public static final native int FMOD_Studio_EventInstance_Stop(long j, boolean z);

    public static final native void FMOD_Studio_System_FlushCommands();

    public static final native int FMOD_Studio_System_GetBankCount();

    public static final native int FMOD_Studio_System_GetBankList(long[] jArr);

    public static native long FMOD_Studio_System_GetBus(String str);

    public static native int FMOD_Studio_System_GetParameterDescriptionCount();

    public static native int FMOD_Studio_System_GetParameterDescriptionList(long[] jArr);

    public static native int FMOD_Studio_System_SetParameterByID(long j, float f, boolean z);

    public static native int FMOD_Studio_System_SetParameterByName(String str, float f, boolean z);

    public static final native int FMOD_Studio_Bank_GetEventCount(long j);

    public static final native int FMOD_Studio_Bank_GetEventList(long j, long[] jArr);

    public static native boolean FMOD_Studio_Bus_GetMute(long j);

    public static native boolean FMOD_Studio_Bus_GetPaused(long j);

    public static native float FMOD_Studio_Bus_GetVolume(long j);

    public static native int FMOD_Studio_Bus_SetMute(long j, boolean z);

    public static native int FMOD_Studio_Bus_SetPaused(long j, boolean z);

    public static native int FMOD_Studio_Bus_SetVolume(long j, float f);

    public static native int FMOD_Studio_Bus_StopAllEvents(long j, boolean z);

    public static native long FMOD_Studio_EventDescription_GetID(long j);

    public static native long FMOD_Studio_EventDescription_GetLength(long j);

    public static final native int FMOD_Studio_EventDescription_GetInstanceCount(long j);

    public static final native int FMOD_Studio_EventDescription_GetInstanceList(long j, long[] jArr);

    public static native int FMOD_Studio_EventDescription_GetParameterDescriptionCount(long j);

    public static native long FMOD_Studio_EventDescription_GetParameterDescriptionByIndex(long j, int i);

    public static final native String FMOD_Studio_EventDescription_GetPath(long j);

    public static native boolean FMOD_Studio_EventDescription_HasSustainPoint(long j);

    public static final native boolean FMOD_Studio_EventInstance_GetPaused(long j);

    public static native int FMOD_Studio_EventInstance_SetCallback(long j, FMOD_STUDIO_EVENT_CALLBACK fmod_studio_event_callback, int i);

    public static final native void FMOD_Studio_EventInstance_SetPaused(long j, boolean z);

    public static native int FMOD_Studio_EventInstance_SetParameterByID(long j, long j2, float f, boolean z);

    public static final native void FMOD_Studio_EventInstance_SetProperty(long j, int i, float f);

    public static native int FMOD_Studio_EventInstance_KeyOff(long j);

    public static native int FMOD_Studio_EventInstance_SetTimelinePosition(long j, int i);

    public static native String FMOD_Studio_ParameterDescription_GetName(long j);

    public static native long FMOD_Studio_ParameterDescription_GetID(long j);

    public static native int FMOD_Studio_ParameterDescription_GetFlags(long j);

    public static native void FMOD_Studio_ParameterDescription_Free(long j);

    public static void init() {
        DebugLog.log("[javafmodJNI] Init: Start");
        Object obj = "";
        if ("1".equals(System.getProperty("zomboid.debuglibs.fmod"))) {
            DebugLog.log("***** Loading debug version of fmodintegration");
            obj = "d";
        }
        try {
            if (System.getProperty("os.name").contains("OS X")) {
                System.loadLibrary("fmod");
                System.loadLibrary("fmodstudio");
                System.loadLibrary("fmodintegration");
            } else if (System.getProperty("os.name").startsWith("Win")) {
                if (System.getProperty("sun.arch.data.model").equals("64")) {
                    DebugLog.log("[javafmodJNI] Init: WIN 64");
                    System.loadLibrary("fmod");
                    System.loadLibrary("fmodstudio");
                    System.loadLibrary("fmodintegration64" + obj);
                } else {
                    System.loadLibrary("fmod");
                    System.loadLibrary("fmodstudio");
                    System.loadLibrary("fmodintegration32");
                }
            } else {
                loadLibrary("libfmod.so.13.6");
                loadLibrary("libfmodstudio.so.13.6");
                if (System.getProperty("sun.arch.data.model").equals("64")) {
                    System.loadLibrary("fmodintegration64");
                } else {
                    System.loadLibrary("fmodintegration32");
                }
            }
        } catch (UnsatisfiedLinkError e) {
            System.out.println("Failed to load fmodintegration library");
            e.printStackTrace();
            throw new UnsatisfiedLinkError("Can't load native libraries");
        }
    }

    private static void loadLibrary(String str) {
        for (String str2 : System.getProperty("java.library.path", "").split(File.pathSeparator)) {
            File file = new File(str2 + "/" + str);
            if (file.exists()) {
                System.load(file.getAbsolutePath());
                return;
            }
        }
    }

    private static void logPutsCallback(String str) {
        long currentTimeMillis = System.currentTimeMillis();
        PrintStream printStream = System.out;
        printStream.print(currentTimeMillis + " " + printStream);
    }
}